A processing entity is adapted to process information. It can include a processing system (such as a host computer) or a virtual processing entity such as a virtual machine. A processing entity can also include part of a processing system, such as a single process or group of processes within a system.
Information that represents the transient state of the processing entity is usually arranged within multiple blocks that form a processing entity memory space.
The transient state does not include application related information, the content of volatile memory units that are connected to the processing system or that belong to the processing system.
Transient state information can be stored and restored by using transient state information check-pointing. The check-pointing includes repetitively sending to a storage device transient state information at various points in time.
Non-incremental check-pointing techniques involve sending the entire transient state information during each check-pointing iteration while incremental check-pointing involves sending only differences between a current transient state information and previous transient state information.
In many cases there is a need to restore transient state information reflecting the transient state at pervious points in time. This feature can help efficiently overcome from failures that occur during the check-pointing process or at other times.
The management of incremental check-pointing systems and especially incremental check-pointing systems that facilitate a restoration of multiple previous versions of the transient state information is highly complicated.
There is a growing need to provide devices, computer program products and methods that will enable efficient restoration of information.